#ifndef __MOTOR_H
#define __MOTOR_H

//为了编程方便，首先宏定义一些代码
#define MOTOR_A_H HAL_GPIO_WritePin(GPIOA, GPIO_PIN_1, GPIO_PIN_SET);
#define MOTOR_A_L HAL_GPIO_WritePin(GPIOA, GPIO_PIN_1, GPIO_PIN_RESET);
	
#define MOTOR_B_H HAL_GPIO_WritePin(GPIOA, GPIO_PIN_2, GPIO_PIN_SET);
#define MOTOR_B_L HAL_GPIO_WritePin(GPIOA, GPIO_PIN_2, GPIO_PIN_RESET);
	
#define MOTOR_C_H HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
#define MOTOR_C_L HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
	
#define MOTOR_D_H HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_SET);
#define MOTOR_D_L HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_RESET);

#define MOTOR_DIR_CW     0    // Clockwise（顺时针）
#define MOTOR_DIR_CCW    1    // Counter-Clockwise（逆时针）

void MOTOR_CONTROL(uint16_t direction);//对电机进行控制，使用八拍

void Step_MOTOR_Control(uint16_t angle,uint8_t direction);//电机启动

void Step_MOTOR_Reset(void);

void Step_MOTOR_Stop(void);//四相都是低电平代表电机停止

#endif
